package com.tp2.etna.distribucion2.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;

import javax.sql.DataSource;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;

import com.tp2.etna.distribucion2.modelo.Entrega;
import com.tp2.etna.distribucion2.modelo.EntregaDetalle;

@Repository
public class EntregaDetalleDist2DAOImpl implements EntregaDetalleDist2DAO {

	@Autowired
    private DataSource dataSource;
	
	@Override
	public boolean actualizarDetalle(Entrega entrega) {
		String query = "update entregadetalle ed set cantidadConfirmada = ?"
						+ "	where ed.idEntrega = ?"
						+ " and ed.idProducto = ?";
		Connection con = null;
        PreparedStatement ps = null;
        for (EntregaDetalle detalle : entrega.getDetalle()) {
        	try{
	            con = dataSource.getConnection();
	            ps = con.prepareStatement(query);
	            ps.setInt(1, detalle.getCantidadConfirmada());
	            ps.setInt(2, entrega.getCodigo());
	            ps.setInt(3, detalle.getCodigoProducto());
	           
	            int result = ps.executeUpdate();
	            
	            if(result == 0)
	            return false;
	        }catch(SQLException e){
	            e.printStackTrace();
	        }finally{
	            try {
	                ps.close();
	                con.close();
	            } catch (SQLException e) {
	                e.printStackTrace();
	            }
	        }
		}
        
        return true;
	}
}
